The background of the present disclosure is hereinafter introduced with the discussion of techniques relating to its context. However, even when this discussion refers to documents, acts, artifacts and the like, it does not suggest or represent that the discussed techniques are part of the prior art or are common general knowledge in the field relevant to the present disclosure.
The present disclosure relates to the information technology field. More specifically, this disclosure relates to the test of the execution of workloads.
The execution of workloads (for example, batch jobs) is a common activity in computing systems. A typical example is when workload schedulers, or simply schedulers, control the execution of the workloads by arranging them into plans defining the flow of execution of the workloads according to corresponding desired execution times and dependencies.
The schedulers may be supplied as cloud services in cloud (computing) environments according to a Software-as-a-Service (SaaS) model. In this case, the schedulers are made available to users thereof by cloud providers, which provision, configure and release corresponding computing resources upon request (so that their actual implementation is completely opaque thereto). This de-coupling of the cloud services from the actual computing resources that implement them provides the illusion of an infinite capacity thereof and improves their exploitation, especially for high-peak load conditions (by means of economies of scale); moreover, the users are now relieved of the management of these computing resources (for example, their installation and maintenance), and they may perform tasks (on a pay-per-use basis) that were not feasible previously because of their cost and complexity (especially for individuals and small companies). The above convert corresponding CAPital EXpenditure (CAPEX) into OPerating EXpenditure (OPEX), thereby resulting in increased control and flexibility.
In particular, the schedulers may be designed as multi-tenant software programs capable of serving multiple users at the same time (referred to as tenants) by each instance thereof. For this purpose, the multi-tenant schedulers partition the data of their tenants logically, so that each tenant is provided with a virtual scheduler emulating a dedicated instance thereof. This provides significant cost savings and management simplifications.
Generally, the execution of the workloads should be tested (to verify whether they behave correctly, for example, from the point of view of their functionalities and performance) before deploying the workloads for execution into production environments.
For this purpose, the workloads might be tested directly in the production environments. However, this would involve an overload of the production environments that may adversely affect their overall performance and reliability; moreover, when the schedulers supplied as cloud services are charged on a pay-per-use basis, the test of the workloads in the production environments would cause a significant increase of their operating costs.
Alternatively, it might be possible to replicate the production environments into corresponding test environments that are completely separate therefrom, so that the workloads are tested therein independently of the production environments. However, the replication of the production environments in the corresponding test environments involves a significant waste of computing resources.